TSTP Solution File: SEV170^5 by cocATP---0.2.0

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEV170^5 : TPTP v6.1.0. Released v4.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p

% Computer : n106.star.cs.uiowa.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2609 0 2.40GHz
% Memory   : 32286.75MB
% OS       : Linux 2.6.32-431.20.3.el6.x86_64
% CPULimit : 300s
% DateTime : Thu Jul 17 13:33:50 EDT 2014

% Result   : Timeout 300.07s
% Output   : None 
% Verified : 
% SZS Type : None (Parsing solution fails)
% Syntax   : Number of formulae    : 0

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEV170^5 : TPTP v6.1.0. Released v4.0.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n106.star.cs.uiowa.edu
% % Model    : x86_64 x86_64
% % CPU      : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% % Memory   : 32286.75MB
% % OS       : Linux 2.6.32-431.20.3.el6.x86_64
% % CPULimit : 300
% % DateTime : Thu Jul 17 08:19:36 CDT 2014
% % CPUTime  : 300.07 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (<kernel.Constant object at 0x27f7d40>, <kernel.Type object at 0x27f7950>) of role type named a_type
% Using role type
% Declaring a:Type
% FOF formula (forall (Xr:(a->(a->(a->(a->Prop))))), ((iff (forall (Xp:((a->(a->a))->a)) (Xq:((a->(a->a))->a)), (((and ((and (((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))) (((eq ((a->(a->a))->a)) Xq) (fun (Xg:(a->(a->a)))=> ((Xg (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))))) ((((Xr (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy))) (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))->(((eq ((a->(a->a))->a)) Xp) Xq)))) (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2)))))) of role conjecture named cTHM190_pme
% Conjecture to prove = (forall (Xr:(a->(a->(a->(a->Prop))))), ((iff (forall (Xp:((a->(a->a))->a)) (Xq:((a->(a->a))->a)), (((and ((and (((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))) (((eq ((a->(a->a))->a)) Xq) (fun (Xg:(a->(a->a)))=> ((Xg (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))))) ((((Xr (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy))) (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))->(((eq ((a->(a->a))->a)) Xp) Xq)))) (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2)))))):Prop
% Parameter a_DUMMY:a.
% We need to prove ['(forall (Xr:(a->(a->(a->(a->Prop))))), ((iff (forall (Xp:((a->(a->a))->a)) (Xq:((a->(a->a))->a)), (((and ((and (((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))) (((eq ((a->(a->a))->a)) Xq) (fun (Xg:(a->(a->a)))=> ((Xg (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))))) ((((Xr (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy))) (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))->(((eq ((a->(a->a))->a)) Xp) Xq)))) (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2))))))']
% Parameter a:Type.
% Trying to prove (forall (Xr:(a->(a->(a->(a->Prop))))), ((iff (forall (Xp:((a->(a->a))->a)) (Xq:((a->(a->a))->a)), (((and ((and (((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))) (((eq ((a->(a->a))->a)) Xq) (fun (Xg:(a->(a->a)))=> ((Xg (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))))) ((((Xr (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy))) (Xq (fun (Xx:a) (Xy:a)=> Xx))) (Xq (fun (Xx:a) (Xy:a)=> Xy))))->(((eq ((a->(a->a))->a)) Xp) Xq)))) (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2))))))
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eq_ref00:=(eq_ref0 Xp):(((eq ((a->(a->a))->a)) Xp) Xp)
% Found (eq_ref0 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eq_ref ((a->(a->a))->a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eq_ref ((a->(a->a))->a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eq_ref ((a->(a->a))->a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P (Xp x1))->(P (Xp x1)))
% Found (eq_ref00 P) as proof of (P0 (Xp x1))
% Found ((eq_ref0 (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found eq_ref000:=(eq_ref00 P):((P (Xp x1))->(P (Xp x1)))
% Found (eq_ref00 P) as proof of (P0 (Xp x1))
% Found ((eq_ref0 (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 (Xp x1)):(((eq a) (Xp x1)) (Xp x1))
% Found (eq_ref0 (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found eq_ref00:=(eq_ref0 (Xp x1)):(((eq a) (Xp x1)) (Xp x1))
% Found (eq_ref0 (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion_dep000:=(eta_expansion_dep00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion_dep00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion_dep0 (fun (x4:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion_dep (a->(a->a))) (fun (x4:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion_dep (a->(a->a))) (fun (x4:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion_dep (a->(a->a))) (fun (x4:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found x1:(P Xp)
% Instantiate: b:=Xp:((a->(a->a))->a)
% Found x1 as proof of (P0 b)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P (Xp x1))->(P (Xp x1)))
% Found (eq_ref00 P) as proof of (P0 (Xp x1))
% Found ((eq_ref0 (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found eq_ref000:=(eq_ref00 P):((P (Xp x1))->(P (Xp x1)))
% Found (eq_ref00 P) as proof of (P0 (Xp x1))
% Found ((eq_ref0 (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found eq_ref00:=(eq_ref0 (((eq a) Xy1) Xy2)):(((eq Prop) (((eq a) Xy1) Xy2)) (((eq a) Xy1) Xy2))
% Found (eq_ref0 (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found ((eq_ref Prop) (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found ((eq_ref Prop) (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found ((eq_ref Prop) (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found eq_ref00:=(eq_ref0 (Xp x1)):(((eq a) (Xp x1)) (Xp x1))
% Found (eq_ref0 (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found eq_ref00:=(eq_ref0 (Xp x1)):(((eq a) (Xp x1)) (Xp x1))
% Found (eq_ref0 (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found x40:=(x4 (fun (x5:((a->(a->a))->a))=> (P Xp))):((P Xp)->(P Xp))
% Found (x4 (fun (x5:((a->(a->a))->a))=> (P Xp))) as proof of (P0 Xp)
% Found (x4 (fun (x5:((a->(a->a))->a))=> (P Xp))) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xy1)->(P Xy1))
% Found (eq_ref00 P) as proof of (P0 Xy1)
% Found ((eq_ref0 Xy1) P) as proof of (P0 Xy1)
% Found (((eq_ref a) Xy1) P) as proof of (P0 Xy1)
% Found (((eq_ref a) Xy1) P) as proof of (P0 Xy1)
% Found eq_ref000:=(eq_ref00 P):((P Xx1)->(P Xx1))
% Found (eq_ref00 P) as proof of (P0 Xx1)
% Found ((eq_ref0 Xx1) P) as proof of (P0 Xx1)
% Found (((eq_ref a) Xx1) P) as proof of (P0 Xx1)
% Found (((eq_ref a) Xx1) P) as proof of (P0 Xx1)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Xy2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xy2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xy2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xy2)
% Found eq_ref00:=(eq_ref0 Xy1):(((eq a) Xy1) Xy1)
% Found (eq_ref0 Xy1) as proof of (((eq a) Xy1) b)
% Found ((eq_ref a) Xy1) as proof of (((eq a) Xy1) b)
% Found ((eq_ref a) Xy1) as proof of (((eq a) Xy1) b)
% Found ((eq_ref a) Xy1) as proof of (((eq a) Xy1) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Xx2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xx2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xx2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xx2)
% Found eq_ref00:=(eq_ref0 Xx1):(((eq a) Xx1) Xx1)
% Found (eq_ref0 Xx1) as proof of (((eq a) Xx1) b)
% Found ((eq_ref a) Xx1) as proof of (((eq a) Xx1) b)
% Found ((eq_ref a) Xx1) as proof of (((eq a) Xx1) b)
% Found ((eq_ref a) Xx1) as proof of (((eq a) Xx1) b)
% Found x1:(P Xp)
% Instantiate: f:=Xp:((a->(a->a))->a)
% Found x1 as proof of (P0 f)
% Found x1:(P Xp)
% Instantiate: f:=Xp:((a->(a->a))->a)
% Found x1 as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found eq_ref00:=(eq_ref0 Xq):(((eq ((a->(a->a))->a)) Xq) Xq)
% Found (eq_ref0 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found x40:=(x4 (fun (x5:((a->(a->a))->a))=> (P Xp))):((P Xp)->(P Xp))
% Found (x4 (fun (x5:((a->(a->a))->a))=> (P Xp))) as proof of (P0 Xp)
% Found (x4 (fun (x5:((a->(a->a))->a))=> (P Xp))) as proof of (P0 Xp)
% Found x1:(P Xp)
% Instantiate: b:=Xp:((a->(a->a))->a)
% Found x1 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq a) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (forall (x:(a->(a->a))), (((eq a) (f x)) (Xq x)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq a) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (forall (x:(a->(a->a))), (((eq a) (f x)) (Xq x)))
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found x3:(((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))
% Found x3 as proof of (((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found eq_ref00:=(eq_ref0 Xq):(((eq ((a->(a->a))->a)) Xq) Xq)
% Found (eq_ref0 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (P b)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (P b)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (P b)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P (Xp x3))->(P (Xp x3)))
% Found (eq_ref00 P) as proof of (P0 (Xp x3))
% Found ((eq_ref0 (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found eq_ref000:=(eq_ref00 P):((P (Xp x3))->(P (Xp x3)))
% Found (eq_ref00 P) as proof of (P0 (Xp x3))
% Found ((eq_ref0 (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found eq_ref000:=(eq_ref00 P):((P (Xq x1))->(P (Xq x1)))
% Found (eq_ref00 P) as proof of (P0 (Xq x1))
% Found ((eq_ref0 (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found eq_ref000:=(eq_ref00 P):((P (Xq x1))->(P (Xq x1)))
% Found (eq_ref00 P) as proof of (P0 (Xq x1))
% Found ((eq_ref0 (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found eq_ref00:=(eq_ref0 (((eq a) Xy1) Xy2)):(((eq Prop) (((eq a) Xy1) Xy2)) (((eq a) Xy1) Xy2))
% Found (eq_ref0 (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found ((eq_ref Prop) (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found ((eq_ref Prop) (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found ((eq_ref Prop) (((eq a) Xy1) Xy2)) as proof of (((eq Prop) (((eq a) Xy1) Xy2)) b)
% Found eq_ref00:=(eq_ref0 (Xp x3)):(((eq a) (Xp x3)) (Xp x3))
% Found (eq_ref0 (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found eq_ref00:=(eq_ref0 (Xp x3)):(((eq a) (Xp x3)) (Xp x3))
% Found (eq_ref0 (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% Instantiate: b:=(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x)))):Prop
% Found eta_expansion as proof of b
% Found eq_ref00:=(eq_ref0 (Xq x1)):(((eq a) (Xq x1)) (Xq x1))
% Found (eq_ref0 (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found eq_ref00:=(eq_ref0 (Xq x1)):(((eq a) (Xq x1)) (Xq x1))
% Found (eq_ref0 (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found eq_ref000:=(eq_ref00 P):((P (Xp x1))->(P (Xp x1)))
% Found (eq_ref00 P) as proof of (P0 (Xp x1))
% Found ((eq_ref0 (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found eq_ref000:=(eq_ref00 P):((P (Xp x1))->(P (Xp x1)))
% Found (eq_ref00 P) as proof of (P0 (Xp x1))
% Found ((eq_ref0 (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found (((eq_ref a) (Xp x1)) P) as proof of (P0 (Xp x1))
% Found eq_ref00:=(eq_ref0 (Xq x1)):(((eq a) (Xq x1)) (Xq x1))
% Found (eq_ref0 (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found eq_ref00:=(eq_ref0 (Xq x1)):(((eq a) (Xq x1)) (Xq x1))
% Found (eq_ref0 (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xp x1))
% Found x1:(P Xq)
% Instantiate: b:=Xq:((a->(a->a))->a)
% Found x1 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Xy2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xy2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xy2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xy2)
% Found eq_ref00:=(eq_ref0 Xy1):(((eq a) Xy1) Xy1)
% Found (eq_ref0 Xy1) as proof of (((eq a) Xy1) b)
% Found ((eq_ref a) Xy1) as proof of (((eq a) Xy1) b)
% Found ((eq_ref a) Xy1) as proof of (((eq a) Xy1) b)
% Found ((eq_ref a) Xy1) as proof of (((eq a) Xy1) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) Xx2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xx2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xx2)
% Found ((eq_ref a) b) as proof of (((eq a) b) Xx2)
% Found eq_ref00:=(eq_ref0 Xx1):(((eq a) Xx1) Xx1)
% Found (eq_ref0 Xx1) as proof of (((eq a) Xx1) b)
% Found ((eq_ref a) Xx1) as proof of (((eq a) Xx1) b)
% Found ((eq_ref a) Xx1) as proof of (((eq a) Xx1) b)
% Found ((eq_ref a) Xx1) as proof of (((eq a) Xx1) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion_dep00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion_dep0 (fun (x3:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion_dep (a->(a->a))) (fun (x3:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion_dep (a->(a->a))) (fun (x3:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion_dep (a->(a->a))) (fun (x3:(a->(a->a)))=> a)) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eq_ref000:=(eq_ref00 P):((P Xx1)->(P Xx1))
% Found (eq_ref00 P) as proof of (P0 Xx1)
% Found ((eq_ref0 Xx1) P) as proof of (P0 Xx1)
% Found (((eq_ref a) Xx1) P) as proof of (P0 Xx1)
% Found (((eq_ref a) Xx1) P) as proof of (P0 Xx1)
% Found eq_ref000:=(eq_ref00 P):((P Xy1)->(P Xy1))
% Found (eq_ref00 P) as proof of (P0 Xy1)
% Found ((eq_ref0 Xy1) P) as proof of (P0 Xy1)
% Found (((eq_ref a) Xy1) P) as proof of (P0 Xy1)
% Found (((eq_ref a) Xy1) P) as proof of (P0 Xy1)
% Found x40:=(x4 (fun (x5:((a->(a->a))->a))=> (P Xp))):((P Xp)->(P Xp))
% Found (x4 (fun (x5:((a->(a->a))->a))=> (P Xp))) as proof of (P0 Xp)
% Found (x4 (fun (x5:((a->(a->a))->a))=> (P Xp))) as proof of (P0 Xp)
% Found x1:(P Xp)
% Instantiate: f:=Xp:((a->(a->a))->a)
% Found x1 as proof of (P0 f)
% Found x1:(P Xp)
% Instantiate: f:=Xp:((a->(a->a))->a)
% Found x1 as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(a->a))->a)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(a->a))->a)) b0) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b0) as proof of (((eq ((a->(a->a))->a)) b0) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b0) as proof of (((eq ((a->(a->a))->a)) b0) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b0) as proof of (((eq ((a->(a->a))->a)) b0) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b0)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b0)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b0)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b0)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b0)
% Found eq_ref00:=(eq_ref0 (Xp x1)):(((eq a) (Xp x1)) (Xp x1))
% Found (eq_ref0 (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found eq_ref00:=(eq_ref0 (Xp x1)):(((eq a) (Xp x1)) (Xp x1))
% Found (eq_ref0 (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found ((eq_ref a) (Xp x1)) as proof of (((eq a) (Xp x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x1))
% Found x3:(P Xp)
% Instantiate: b:=Xp:((a->(a->a))->a)
% Found x3 as proof of (P0 b)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found eq_ref00:=(eq_ref0 Xq):(((eq ((a->(a->a))->a)) Xq) Xq)
% Found (eq_ref0 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found x1:(P Xp)
% Instantiate: b:=Xp:((a->(a->a))->a)
% Found x1 as proof of (P0 b)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq a) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (forall (x:(a->(a->a))), (((eq a) (f x)) (Xq x)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq a) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found ((eq_ref a) (f x2)) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (((eq a) (f x2)) (Xq x2))
% Found (fun (x2:(a->(a->a)))=> ((eq_ref a) (f x2))) as proof of (forall (x:(a->(a->a))), (((eq a) (f x)) (Xq x)))
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (P b)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (P b)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (P b)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 Xq):(((eq ((a->(a->a))->a)) Xq) (fun (x:(a->(a->a)))=> (Xq x)))
% Found (eta_expansion00 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eta_expansion0 a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found (((eta_expansion (a->(a->a))) a) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found x3:(((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))
% Found x3 as proof of (((eq ((a->(a->a))->a)) Xp) (fun (Xg:(a->(a->a)))=> ((Xg (Xp (fun (Xx:a) (Xy:a)=> Xx))) (Xp (fun (Xx:a) (Xy:a)=> Xy)))))
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xp)
% Found eq_ref00:=(eq_ref0 Xq):(((eq ((a->(a->a))->a)) Xq) Xq)
% Found (eq_ref0 Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found ((eq_ref ((a->(a->a))->a)) Xq) as proof of (((eq ((a->(a->a))->a)) Xq) b)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P Xq)->(P Xq))
% Found (eq_ref00 P) as proof of (P0 Xq)
% Found ((eq_ref0 Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found (((eq_ref ((a->(a->a))->a)) Xq) P) as proof of (P0 Xq)
% Found eq_ref000:=(eq_ref00 P):((P (Xp x3))->(P (Xp x3)))
% Found (eq_ref00 P) as proof of (P0 (Xp x3))
% Found ((eq_ref0 (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found eq_ref000:=(eq_ref00 P):((P (Xp x3))->(P (Xp x3)))
% Found (eq_ref00 P) as proof of (P0 (Xp x3))
% Found ((eq_ref0 (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found (((eq_ref a) (Xp x3)) P) as proof of (P0 (Xp x3))
% Found eq_ref000:=(eq_ref00 P):((P (Xq x1))->(P (Xq x1)))
% Found (eq_ref00 P) as proof of (P0 (Xq x1))
% Found ((eq_ref0 (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found eq_ref000:=(eq_ref00 P):((P (Xq x1))->(P (Xq x1)))
% Found (eq_ref00 P) as proof of (P0 (Xq x1))
% Found ((eq_ref0 (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found (((eq_ref a) (Xq x1)) P) as proof of (P0 (Xq x1))
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found eq_ref000:=(eq_ref00 P):((P Xp)->(P Xp))
% Found (eq_ref00 P) as proof of (P0 Xp)
% Found ((eq_ref0 Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found (((eq_ref ((a->(a->a))->a)) Xp) P) as proof of (P0 Xp)
% Found iff_sym0:=(iff_sym (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2))))):(forall (B:Prop), (((iff (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2))))) B)->((iff B) (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2)))))))
% Instantiate: b:=(forall (B:Prop), (((iff (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2))))) B)->((iff B) (forall (Xx1:a) (Xy1:a) (Xx2:a) (Xy2:a), (((((Xr Xx1) Xy1) Xx2) Xy2)->((and (((eq a) Xx1) Xx2)) (((eq a) Xy1) Xy2))))))):Prop
% Found iff_sym0 as proof of b
% Found eq_ref00:=(eq_ref0 b):(((eq ((a->(a->a))->a)) b) b)
% Found (eq_ref0 b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found ((eq_ref ((a->(a->a))->a)) b) as proof of (((eq ((a->(a->a))->a)) b) Xq)
% Found eta_expansion000:=(eta_expansion00 Xp):(((eq ((a->(a->a))->a)) Xp) (fun (x:(a->(a->a)))=> (Xp x)))
% Found (eta_expansion00 Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found ((eta_expansion0 a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found (((eta_expansion (a->(a->a))) a) Xp) as proof of (((eq ((a->(a->a))->a)) Xp) b)
% Found x2:(P (Xp x1))
% Instantiate: b:=(Xp x1):a
% Found x2 as proof of (P0 b)
% Found x2:(P (Xp x1))
% Instantiate: b:=(Xp x1):a
% Found x2 as proof of (P0 b)
% Found x1:(P Xq)
% Instantiate: b:=Xq:((a->(a->a))->a)
% Found x1 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 (Xq x1)):(((eq a) (Xq x1)) (Xq x1))
% Found (eq_ref0 (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found eq_ref00:=(eq_ref0 (Xq x1)):(((eq a) (Xq x1)) (Xq x1))
% Found (eq_ref0 (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found ((eq_ref a) (Xq x1)) as proof of (((eq a) (Xq x1)) b)
% Found x3:(P Xp)
% Instantiate: f:=Xp:((a->(a->a))->a)
% Found x3 as proof of (P0 f)
% Found x3:(P Xp)
% Instantiate: f:=Xp:((a->(a->a))->a)
% Found x3 as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 (Xp x3)):(((eq a) (Xp x3)) (Xp x3))
% Found (eq_ref0 (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found ((eq_ref a) (Xp x3)) as proof of (((eq a) (Xp x3)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq a) b) b)
% Found (eq_ref0 b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found ((eq_ref a) b) as proof of (((eq a) b) (Xq x3))
% Found eq_ref00:=(eq_ref0 (Xp x3)):(((eq a) (X
% EOF
%------------------------------------------------------------------------------